menu菜单选中状态设置
局部控件全屏展示(非窗体全屏,而是任意一个控件全屏)
窗体之间的通信,与模态窗体的通信的两种方式
以上这种方式有它的好处和弊端:
好处: 一对多, 凡是运行了的程序中有这个接收
subscribe()
的都会同一时间接收到消息.
aar调用网站语音合成
做了个界面:
发现貌似文本过长的话,有时候就会转换失败导致播放不了....
解决办法: 可以利用标点符号进行分隔, 然后将分隔的字串按照顺序一个个转换,这个播放的时候转换下一个,..依次进行知道结束...
import win.ui; /*DSG{{*/ mainForm = win.form(text="aardio form";right=553;bottom=334) mainForm.add( button={cls="button";text="语音合成";left=393;aar调用网站语音合成
在aar的官方论坛看到有人问怎么调用网站那个语音合成?
网站是 peiyinge.com/make/
跳一跳中从skeleton骨架里拟合椭圆
另外一种写法:
这种适应性差,只为学习用
将图片进行灰度之后,阈值缩放加深对比色,然后利用灰度方块统一色调,整个画面图形就全是黑色了,然后找边缘...这里就又问题了.边缘有些顺序不一致.....
// var ret,Image1, Image2, Image3 = halconc.decompose3 (gameImage, 0,0,0); var ret,ROI_0 = halconc.gen_rectangle1 (0, 218.498, 2.83828, 122halcon一些算子实验
gray_erosion_rect (Image, Imag, StrokeWidth, StrokeWidth)
跳一跳中从skeleton骨架里拟合椭圆
下面是找图片中方形物体的中心点:(圆形点的是上面的,但是怎么判断是方的或者是圆的??)
import halconc; //console.open(); //首先设置默认背景图像 var ret,BGImage = halconc.read_image(0,"res/bg"); var ret,跳一跳中从skeleton骨架里拟合椭圆
跳一跳中有圆形的跳板, 嗯,不对,是椭圆形的跳板.
我们通过骨架获得到的边界需要进行椭圆模拟,然后找到中心点
read_image (Image, 'C:/Users/Administrator/Desktop/halcon_T1T/testsave.png') dev_close_win用鸟叔的spoke函数提取圆心坐标及半径
因为马上就要用到这个函数,所以转自一篇应用备用:
read_image (Image, 'C:/Users/Administrator/Desktop/223123mzv05ooc5r0xmmmc.jpg') rgb1_to_gray (Image, Image) draw_spoke (Imagehtmlayout内嵌普通窗体控件
HTMLayout可以非常方便的嵌入普通控件、和窗体,其他浏览器都没有这功能。看范例里有,这算是HTMLayout一大亮点,可以无限扩展功能。
实际上,HTMLayout的子页面不但可以是div,还可以是iframe,用iframe就可以嵌入另外一个网页
看源码,指定url就可以了
文件路径拆分(分解)
相对路径变为绝对路径:
var ff = io.fullpath("\res\123.txt") console.log(ff)文件路径拆分(分解)
短路径变为长路径的方法:
窗体之间的通信,与模态窗体的通信的两种方式
父窗口代码如下:
import win.ui; /*DSG{{*/ mainForm = win.form(text="与模态窗口相互通信演示";right=372;bottom=292) mainForm.add( button={cls="button";text="打开模态子窗口并附带参数";laar实现自动调整屏幕分辨率
来自群整理: 感谢黑猫,lst
aar调整屏幕分辨率
import sys.monitor for( devMode in sys.monitor.eachMode() ){ devMode.pelsWidth = 800 devMode.pelsHeight = 600; devMode.bitsPerPel = 32; devMode.fields= 0x80000/*DM_PELSWIDTH*/|0x100000/*DM_PELSHEIGHT*/|0x40000/*DM模态对话框的使用:阻止主窗口继续执行,在没有关闭模态窗口之前主窗口不响应用户操作
应用场景:
实现listview双击了任意一行,然后弹出一个自定义的设置窗口, 要保证这个窗口关闭之前,listview这个窗口不能再操作.
if( code = 0xFFFFFFFD/*_NM_DBLCLK*/ ){ var x,y = win.getMessagePos